package cn.iocoder.yudao.module.pay.splitting.pojo.dto;

import cn.iocoder.yudao.framework.validation.InEnumValue;
import cn.iocoder.yudao.module.pay.splitting.enums.SplittingTypeEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotBlank;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

/**
 * <pre>
 * OOoO0OOoO0OOOooo0oOOOO0OOOOO0oooOO0ooOOO0Ooooo0OOOOo0ooooO0OOooo0Ooooo0OOOOO
 *  这里是文件说明
 * OOoO0OOoO0OOOooo0oOOOO0OOOOO0oooOO0ooOOO0Ooooo0OOOOo0ooooO0OOooo0Ooooo0OOOOO
 * </pre>
 *
 * @author 山野羡民（1032694760@qq.com）
 * @since 2025/05/28
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class SplittingUserDTO {

    @Schema(description = "分账类型", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "分账类型不能为空")
    @InEnumValue(SplittingTypeEnum.class)
    private Integer splitType;

    @Schema(description = "分账渠道的用户编号", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "分账渠道的用户编号不能为空")
    private String splitChannelUserId;

    @Schema(description = "分账金额，单位为分", requiredMode = Schema.RequiredMode.REQUIRED)
    @NotBlank(message = "分账金额不能为空")
    private Integer splitAmount;

}
